<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Frameset//EN""http://www.w3.org/TR/REC-html40/frameset.dtd">
<!--NewPage-->
<HTML>
<HEAD>
<TITLE>
DRA Systems: OR-Objects 1.2.4: Class  Randomizer
</TITLE>
<LINK REL ="stylesheet" TYPE="text/css" HREF="../../../../stylesheet.css" TITLE="Style">
</HEAD>
<BODY BGCOLOR="white">

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_top"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_top_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../drasys/or/graph/vrp/RandomizableBase.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../drasys/or/graph/vrp/VRPBase.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Randomizer.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
<!-- ======== START OF CLASS DATA ======== -->
<H2>
<FONT SIZE="-1">
drasys.or.graph.vrp</FONT>
<BR>
Class  Randomizer</H2>
<PRE>
java.lang.Object
  |
  +--<B>drasys.or.graph.vrp.Randomizer</B>
</PRE>
<DL>
<DT><B>Direct Known Subclasses:</B> <DD><A HREF="../../../../drasys/or/graph/vrp/ClarkeWright.html">ClarkeWright</A>, <A HREF="../../../../drasys/or/graph/vrp/GillettMiller.html">GillettMiller</A></DD>
</DL>
<HR>
<DL>
<DT>public class <B>Randomizer</B><DT>extends java.lang.Object<DT>implements <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>

<P>
A class to randomize VRP algorithms that implement 'Randomizable'.
<P>
<HR>

<P>
<!-- ======== INNER CLASS SUMMARY ======== -->


<!-- =========== FIELD SUMMARY =========== -->


<!-- ======== CONSTRUCTOR SUMMARY ======== -->

<A NAME="constructor_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Constructor Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#Randomizer(drasys.or.graph.vrp.RandomizableI)">Randomizer</A></B>(<A HREF="../../../../drasys/or/graph/vrp/RandomizableI.html">RandomizableI</A>&nbsp;randomizable)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Constructs a Randomizer to operate on the algorithm 'randomizable'.</TD>
</TR>
</TABLE>
&nbsp;
<!-- ========== METHOD SUMMARY =========== -->

<A NAME="method_summary"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=2><FONT SIZE="+2">
<B>Method Summary</B></FONT></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#addIterations(int, int)">addIterations</A></B>(int&nbsp;count,
              int&nbsp;strength)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Adds a sequence of iterations at a given strength value.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#constructClosedTours(java.lang.Object)">constructClosedTours</A></B>(java.lang.Object&nbsp;depotKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Construct a solution with closed tours that begin and end at the depot vertex.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#constructInboundTours(java.lang.Object)">constructInboundTours</A></B>(java.lang.Object&nbsp;depotKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Construct a solution with open tours that begin at arbitrary vertices and end at the depot vertex.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#constructOutboundTours(java.lang.Object)">constructOutboundTours</A></B>(java.lang.Object&nbsp;depotKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Construct a solution with open tours that begin at the depot vertex and end at arbitrary vertices.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#getCost()">getCost</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the total cost of the solution tours.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#getCosts()">getCosts</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the cost of each tour in the solution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;double[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#getLoads()">getLoads</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the load for each tour in the solution.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;<A HREF="../../../../drasys/or/prob/RandomI.html">RandomI</A></CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#getRandom()">getRandom</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Gets the random number generator.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;java.util.Vector[]</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#getTours()">getTours</A></B>()</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Returns the improved tour from the construction algorithm.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#selectVertex(boolean)">selectVertex</A></B>(boolean&nbsp;select)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Selects all of the vertices in the graph to be in the solution if 'select' is true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#selectVertex(boolean[])">selectVertex</A></B>(boolean[]&nbsp;select)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Selects all of the vertices whose corresponding element in 'select' is true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#selectVertex(java.lang.Object, boolean)">selectVertex</A></B>(java.lang.Object&nbsp;key,
             boolean&nbsp;select)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Selects the vertex to be in the solution if 'select' is true.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setCapacityConstraint(double)">setCapacityConstraint</A></B>(double&nbsp;maxLoadPerVehicle)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the vehicle capacity constraint.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setCostConstraint(double)">setCostConstraint</A></B>(double&nbsp;maxCostPerVehicle)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the vehicle cost constraint.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setEdgeKey(java.lang.Object)">setEdgeKey</A></B>(java.lang.Object&nbsp;edgeKey)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the key used to select from parallel edges between vertices.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setGraph(drasys.or.graph.GraphI)">setGraph</A></B>(<A HREF="../../../../drasys/or/graph/GraphI.html">GraphI</A>&nbsp;graph)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the graph for the VRP algorithm.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setProperties(drasys.or.graph.PropertiesI)">setProperties</A></B>(<A HREF="../../../../drasys/or/graph/PropertiesI.html">PropertiesI</A>&nbsp;properties)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the properties object.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setRandom(drasys.or.prob.RandomI)">setRandom</A></B>(<A HREF="../../../../drasys/or/prob/RandomI.html">RandomI</A>&nbsp;random)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the random number generator.</TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD ALIGN="right" VALIGN="top" WIDTH="1%"><FONT SIZE="-1">
<CODE>&nbsp;void</CODE></FONT></TD>
<TD><CODE><B><A HREF="../../../../drasys/or/graph/vrp/Randomizer.html#setVehicleCost(double)">setVehicleCost</A></B>(double&nbsp;vehicleCost)</CODE>

<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Sets the vehicle cost constraint.</TD>
</TR>
</TABLE>
&nbsp;<A NAME="methods_inherited_from_class_java.lang.Object"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#EEEEFF" CLASS="TableSubHeadingColor">
<TD><B>Methods inherited from class java.lang.Object</B></TD>
</TR>
<TR BGCOLOR="white" CLASS="TableRowColor">
<TD><CODE>clone, 
equals, 
finalize, 
getClass, 
hashCode, 
notify, 
notifyAll, 
toString, 
wait, 
wait, 
wait</CODE></TD>
</TR>
</TABLE>
&nbsp;
<P>

<!-- ============ FIELD DETAIL =========== -->


<!-- ========= CONSTRUCTOR DETAIL ======== -->

<A NAME="constructor_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Constructor Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="Randomizer(drasys.or.graph.vrp.RandomizableI)"><!-- --></A><H3>
Randomizer</H3>
<PRE>
public <B>Randomizer</B>(<A HREF="../../../../drasys/or/graph/vrp/RandomizableI.html">RandomizableI</A>&nbsp;randomizable)
           throws <A HREF="../../../../drasys/or/graph/vrp/VRPException.html">VRPException</A></PRE>
<DL>
<DD>Constructs a Randomizer to operate on the algorithm 'randomizable'.<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/VRPException.html">VRPException</A> - if 'randomizable' does not implement 'ConstructI' or 'ImproveI'.</DL>
</DD>
</DL>

<!-- ============ METHOD DETAIL ========== -->

<A NAME="method_detail"><!-- --></A>
<TABLE BORDER="1" CELLPADDING="3" CELLSPACING="0" WIDTH="100%">
<TR BGCOLOR="#CCCCFF" CLASS="TableHeadingColor">
<TD COLSPAN=1><FONT SIZE="+2">
<B>Method Detail</B></FONT></TD>
</TR>
</TABLE>

<A NAME="addIterations(int, int)"><!-- --></A><H3>
addIterations</H3>
<PRE>
public void <B>addIterations</B>(int&nbsp;count,
                          int&nbsp;strength)</PRE>
<DL>
<DD>Adds a sequence of iterations at a given strength value.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setRandom(drasys.or.prob.RandomI)"><!-- --></A><H3>
setRandom</H3>
<PRE>
public void <B>setRandom</B>(<A HREF="../../../../drasys/or/prob/RandomI.html">RandomI</A>&nbsp;random)</PRE>
<DL>
<DD>Sets the random number generator.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getRandom()"><!-- --></A><H3>
getRandom</H3>
<PRE>
public <A HREF="../../../../drasys/or/prob/RandomI.html">RandomI</A> <B>getRandom</B>()</PRE>
<DL>
<DD>Gets the random number generator.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="selectVertex(boolean[])"><!-- --></A><H3>
selectVertex</H3>
<PRE>
public void <B>selectVertex</B>(boolean[]&nbsp;select)</PRE>
<DL>
<DD>Selects all of the vertices whose corresponding element in 'select' is true.
Unselects all of the vertices whose corresponding element in 'select' is false.
All of the vertices are selected by default when the algorithm is constructed.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#selectVertex(boolean[])">selectVertex</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
</DL>
<HR>

<A NAME="selectVertex(boolean)"><!-- --></A><H3>
selectVertex</H3>
<PRE>
public void <B>selectVertex</B>(boolean&nbsp;select)</PRE>
<DL>
<DD>Selects all of the vertices in the graph to be in the solution if 'select' is true.
Unselects all of the vertices if 'select' is false.
All of the vertices are selected by default when the algorithm is constructed.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#selectVertex(boolean)">selectVertex</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
</DL>
<HR>

<A NAME="selectVertex(java.lang.Object, boolean)"><!-- --></A><H3>
selectVertex</H3>
<PRE>
public void <B>selectVertex</B>(java.lang.Object&nbsp;key,
                         boolean&nbsp;select)
                  throws <A HREF="../../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Selects the vertex to be in the solution if 'select' is true.
Unselects the vertex if 'select' is false.
All of the vertices are selected by default when the algorithm is constructed.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#selectVertex(java.lang.Object, boolean)">selectVertex</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
</DL>
<HR>

<A NAME="constructOutboundTours(java.lang.Object)"><!-- --></A><H3>
constructOutboundTours</H3>
<PRE>
public double <B>constructOutboundTours</B>(java.lang.Object&nbsp;depotKey)
                              throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A>,
                                     <A HREF="../../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Construct a solution with open tours that begin at the depot vertex and end at arbitrary vertices.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#constructOutboundTours(java.lang.Object)">constructOutboundTours</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if a solution can not be constructed.</DL>
</DD>
</DL>
<HR>

<A NAME="constructInboundTours(java.lang.Object)"><!-- --></A><H3>
constructInboundTours</H3>
<PRE>
public double <B>constructInboundTours</B>(java.lang.Object&nbsp;depotKey)
                             throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A>,
                                    <A HREF="../../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Construct a solution with open tours that begin at arbitrary vertices and end at the depot vertex.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#constructInboundTours(java.lang.Object)">constructInboundTours</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if a solution can not be constructed.</DL>
</DD>
</DL>
<HR>

<A NAME="constructClosedTours(java.lang.Object)"><!-- --></A><H3>
constructClosedTours</H3>
<PRE>
public double <B>constructClosedTours</B>(java.lang.Object&nbsp;depotKey)
                            throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A>,
                                   <A HREF="../../../../drasys/or/graph/VertexNotFoundException.html">VertexNotFoundException</A></PRE>
<DL>
<DD>Construct a solution with closed tours that begin and end at the depot vertex.<DD><DL>
<DT><B>Specified by: </B><DD><A HREF="../../../../drasys/or/graph/vrp/ConstructI.html#constructClosedTours(java.lang.Object)">constructClosedTours</A> in interface <A HREF="../../../../drasys/or/graph/vrp/ConstructI.html">ConstructI</A></DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if a solution can not be constructed.</DL>
</DD>
</DL>
<HR>

<A NAME="setGraph(drasys.or.graph.GraphI)"><!-- --></A><H3>
setGraph</H3>
<PRE>
public void <B>setGraph</B>(<A HREF="../../../../drasys/or/graph/GraphI.html">GraphI</A>&nbsp;graph)</PRE>
<DL>
<DD>Sets the graph for the VRP algorithm.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setVehicleCost(double)"><!-- --></A><H3>
setVehicleCost</H3>
<PRE>
public void <B>setVehicleCost</B>(double&nbsp;vehicleCost)</PRE>
<DL>
<DD>Sets the vehicle cost constraint. The units must be the same as the edge traversal costs.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCostConstraint(double)"><!-- --></A><H3>
setCostConstraint</H3>
<PRE>
public void <B>setCostConstraint</B>(double&nbsp;maxCostPerVehicle)</PRE>
<DL>
<DD>Sets the vehicle cost constraint.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setCapacityConstraint(double)"><!-- --></A><H3>
setCapacityConstraint</H3>
<PRE>
public void <B>setCapacityConstraint</B>(double&nbsp;maxLoadPerVehicle)</PRE>
<DL>
<DD>Sets the vehicle capacity constraint.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setProperties(drasys.or.graph.PropertiesI)"><!-- --></A><H3>
setProperties</H3>
<PRE>
public void <B>setProperties</B>(<A HREF="../../../../drasys/or/graph/PropertiesI.html">PropertiesI</A>&nbsp;properties)</PRE>
<DL>
<DD>Sets the properties object.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="setEdgeKey(java.lang.Object)"><!-- --></A><H3>
setEdgeKey</H3>
<PRE>
public void <B>setEdgeKey</B>(java.lang.Object&nbsp;edgeKey)</PRE>
<DL>
<DD>Sets the key used to select from parallel edges between vertices.
The default value for 'edgeKey' is null.<DD><DL>
</DL>
</DD>
</DL>
<HR>

<A NAME="getTours()"><!-- --></A><H3>
getTours</H3>
<PRE>
public java.util.Vector[] <B>getTours</B>()
                            throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A></PRE>
<DL>
<DD>Returns the improved tour from the construction algorithm.
The vector contains all the edges and the vertices in alternating order starting and ending with a vertex.
The elements will always be arranged in the order of forward tour traversal.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if no solution was created.</DL>
</DD>
</DL>
<HR>

<A NAME="getCost()"><!-- --></A><H3>
getCost</H3>
<PRE>
public double <B>getCost</B>()
               throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A></PRE>
<DL>
<DD>Returns the total cost of the solution tours.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if no solution was created.</DL>
</DD>
</DL>
<HR>

<A NAME="getCosts()"><!-- --></A><H3>
getCosts</H3>
<PRE>
public double[] <B>getCosts</B>()
                  throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A></PRE>
<DL>
<DD>Returns the cost of each tour in the solution.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if no solution was created.</DL>
</DD>
</DL>
<HR>

<A NAME="getLoads()"><!-- --></A><H3>
getLoads</H3>
<PRE>
public double[] <B>getLoads</B>()
                  throws <A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A></PRE>
<DL>
<DD>Returns the load for each tour in the solution.<DD><DL>
</DL>
</DD>
<DD><DL>
<DT><B>Throws:</B><DD><A HREF="../../../../drasys/or/graph/vrp/SolutionNotFoundException.html">SolutionNotFoundException</A> - if no solution was created.</DL>
</DD>
</DL>
<!-- ========= END OF CLASS DATA ========= -->
<HR>

<!-- ========== START OF NAVBAR ========== -->
<A NAME="navbar_bottom"><!-- --></A>
<TABLE BORDER="0" WIDTH="100%" CELLPADDING="1" CELLSPACING="0">
<TR>
<TD COLSPAN=2 BGCOLOR="#EEEEFF" CLASS="NavBarCell1">
<A NAME="navbar_bottom_firstrow"><!-- --></A>
<TABLE BORDER="0" CELLPADDING="0" CELLSPACING="3">
  <TR ALIGN="center" VALIGN="top">
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../overview-summary.html"><FONT ID="NavBarFont1"><B>Overview</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-summary.html"><FONT ID="NavBarFont1"><B>Package</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#FFFFFF" CLASS="NavBarCell1Rev"> &nbsp;<FONT CLASS="NavBarFont1Rev"><B>Class</B></FONT>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="package-tree.html"><FONT ID="NavBarFont1"><B>Tree</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../deprecated-list.html"><FONT ID="NavBarFont1"><B>Deprecated</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../index-all.html"><FONT ID="NavBarFont1"><B>Index</B></FONT></A>&nbsp;</TD>
  <TD BGCOLOR="#EEEEFF" CLASS="NavBarCell1">    <A HREF="../../../../help-doc.html"><FONT ID="NavBarFont1"><B>Help</B></FONT></A>&nbsp;</TD>
  </TR>
</TABLE>
</TD>
<TD ALIGN="right" VALIGN="top" ROWSPAN=3><EM>
</EM>
</TD>
</TR>

<TR>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
&nbsp;<A HREF="../../../../drasys/or/graph/vrp/RandomizableBase.html"><B>PREV CLASS</B></A>&nbsp;
&nbsp;<A HREF="../../../../drasys/or/graph/vrp/VRPBase.html"><B>NEXT CLASS</B></A></FONT></TD>
<TD BGCOLOR="white" CLASS="NavBarCell2"><FONT SIZE="-2">
  <A HREF="../../../../index.html" TARGET="_top"><B>FRAMES</B></A>  &nbsp;
&nbsp;<A HREF="Randomizer.html" TARGET="_top"><B>NO FRAMES</B></A></FONT></TD>
</TR>
<TR>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
  SUMMARY: &nbsp;INNER&nbsp;|&nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_summary">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_summary">METHOD</A></FONT></TD>
<TD VALIGN="top" CLASS="NavBarCell3"><FONT SIZE="-2">
DETAIL: &nbsp;FIELD&nbsp;|&nbsp;<A HREF="#constructor_detail">CONSTR</A>&nbsp;|&nbsp;<A HREF="#method_detail">METHOD</A></FONT></TD>
</TR>
</TABLE>
<!-- =========== END OF NAVBAR =========== -->

<HR>
Copyright(C)1997-2000 by DRA Systems all rights reserved. <A HREF=http://OpsResearch.com TARGET=HOME>OpsResearch.com</A>
</BODY>
</HTML>
